Block-based Atomicity in Message-passing Distributed Programs
نویسنده
چکیده
In this paper, we have studied the notion of atomicity in message-passing distributed programs. The difference between the notion of atomicity in shared memory programs and messagepassing programs has been discussed in detail. Due to the nature of communication in messagepassing programs, the atomicity requirement in shared memory programs (serializability) does not guarantee the same level of atomicity in message-passing programs. We have referred to the atomicity level guaranteed by the serializability requirement in message-passing programs as the weak atomicity. We have defined the requirements that guarantee a level of atomicity in message-passing programs similar to that in shared memory programs. We have referred to it as the strong atomicity requirement. Both of weak and strong atomicity have been formally defined. The notion of atomicity can be employed to significantly reduce the state space to be considered in verification. Moreover, atomicity violations in a run typically indicate the presence of program bugs. Consequently, the concepts presented in this paper can be exploited to reduce the cost of the verification of message-passing distributed programs.
منابع مشابه
Concurrent Clustered Programming ? ( Extended
We present the concurrency and distribution primitives ofX10, a modern, statically typed, class-based object-oriented (OO) programming language, designed for high productivity programming of scalable applications on high-end machines. The basic move in the X10 programming model is to reify locality through a notion of place, which hosts multiple data items and activities that operate on them. A...
متن کاملTransactional Memory
Shared memory parallel architectures present a single unified address space to each processor. Usually the memory is physically distributed across the system but each processor is able to access any part of it through a single address space. The system hardware is responsible for presenting this abstraction to each processor. Communication between processors is done implicitly through normal me...
متن کاملA Comparative Study of the MPI Communication Primitives on a Cluster
MPI (Message Passing Interface) has become the de facto standard for implementing parallel programs on distributed systems. In MPI, the two basic communication primitives are pointto-point communication and broadcast respectively. In this paper, we evaluate and compare the performance of broadcast with point-to-point communication (both blocking and non-blocking) of the MPI-1 standard library o...
متن کاملAn Improved Token-Based and Starvation Free Distributed Mutual Exclusion Algorithm
Distributed mutual exclusion is a fundamental problem of distributed systems that coordinates the access to critical shared resources. It concerns with how the various distributed processes access to the shared resources in a mutually exclusive manner. This paper presents fully distributed improved token based mutual exclusion algorithm for distributed system. In this algorithm, a process which...
متن کاملTime Optimal Asynchronous Self-Stabilizing Spanning Tree
This paper presents an improved and time-optimal self-stabilizing algorithm for a major task in distributed computinga rooted spanning tree construction. Our solution is decentralized (“truly distributed”), uses a bounded memory and is not based on the assumption that either n (the number of nodes), or diam (the actual diameter of the network), or an existence of cycles in the network are known...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012